package com.cc.blog.admin.service;

import com.cc.blog.admin.domain.dto.*;
import com.cc.blog.common.utils.Result;

/**
 * @author cc
 * @date 2024/10/3 10:46
 */
public interface AdminWikiService {

    /**
     * 新增知识库
     * @param addWikiReqDTO
     * @return
     */
    Result addWiki(AddWikiReqDTO addWikiReqDTO);

    /**
     * 删除知识库
     * @param deleteWikiReqDTO
     * @return
     */
    Result deleteWiki(DeleteWikiReqDTO deleteWikiReqDTO);

    /**
     * 知识库分页查询
     * @param findWikiPageListReqDTO
     * @return
     */
    Result findWikiPageList(FindWikiPageListReqDTO findWikiPageListReqDTO);

    /**
     * 更新知识库置顶状态
     * @param updateWikiIsTopReqDTO
     * @return
     */
    Result updateWikiIsTop(UpdateWikiIsTopReqDTO updateWikiIsTopReqDTO);

    /**
     * 更新知识库发布状态
     * @param updateWikiIsPublishReqDTO
     * @return
     */
    Result updateWikiIsPublish(UpdateWikiIsPublishReqDTO updateWikiIsPublishReqDTO);

    /**
     * 更新知识库
     * @param updateWikiReqDTO
     * @return
     */
    Result updateWiki(UpdateWikiReqDTO updateWikiReqDTO);

    /**
     * 查询知识库目录
     * @param findWikiCatalogListReqDTO
     * @return
     */
    Result findWikiCatalogList(FindWikiCatalogListReqDTO findWikiCatalogListReqDTO);

    /**
     * 更新知识库目录
     * @param updateWikiCatalogReqDTO
     * @return
     */
    Result updateWikiCatalogs(UpdateWikiCatalogReqDTO updateWikiCatalogReqDTO);
}
